home *** CD-ROM | disk | FTP | other *** search
/ Workbench Design / WB Collection.iso / workbench werkzeuge / kickstart tools / mkick / mkick.doc < prev    next >
Text File  |  1996-04-07  |  15KB  |  294 lines

  1. ==============================================================================
  2.  
  3.                                   MKick 1.8
  4.  
  5.                      (c) 1992-1995 MJSoft System Software
  6.  
  7.                                  Martin Mares
  8.  
  9. ==============================================================================
  10.  
  11.  
  12. Introduction and Copyright:
  13. ---------------------------
  14.  
  15.    See README. It contains a lot of things worth of being known.
  16.  
  17.  
  18. MKick usage:
  19. ------------
  20.  
  21.    MKick may be called either from the CLI or from the Workbench.
  22.  
  23.  
  24. Invocation from the CLI
  25. -----------------------
  26.  
  27.    Syntax: MKick [<Kickstart>] [<memory options>] [<other options>]
  28.                  [<debug options>]
  29.  
  30. Kickstart specification:
  31.  
  32.    These parameters specify which Kickstart do you want to use:
  33.  
  34.        <name> - install Kickstart specified by its name
  35.           GUI - show GUI allowing to select the Kickstart and some basic
  36.                 options by the mouse (or the rat if you have one :-)
  37.           ROM - go back to ROM Kickstart
  38.  
  39. Memory options:
  40.  
  41.    These options control the place you want to store the Kickstart on:
  42.  
  43.         NOREL - load Kickstart to its original memory location. Used automati-
  44.                 cally when you have no relocation table for the Kickstart.
  45.                 But only few Kickstarts are on such locations where you have
  46.                 some RAM. (Many Kickstarts are stored in standard ROM memory
  47.                 (at F80000 and higher). Only the beta-ROMs are located at
  48.                 200000 (standard expansion memory) sometimes.)
  49.  
  50. ADR <address> - load Kickstart at specified address. It's used mostly for
  51.                 debugging or when kicking to RAM placed on unusual location.
  52.                 The address is specified in hexadecimal (base-16) notation.
  53.                 All addresses of type 00xx0000 (xx is any number) can be
  54.                 written in short form: xx (this is the notation introduced
  55.                 in SKick). The Kickstart address must be a multiple of 64K
  56.                 (the last four digits _MUST_ be 0) and mustn't be less than
  57.                 40000.
  58.  
  59. CHIP,FAST,EXP,NAC - load Kickstart to CHIP/FAST/EXPANSION/NON-AUTOCONFIG MEMORY.
  60.                 These options may be combined (you can say MKick kick34005.a500
  61.                 CHIP FAST) and MKick will automatically select the best possible
  62.                 location. (The standard order is NAC/EXP/FAST/CHIP, from top
  63.                 to bottom. It is based on standard priority scheme used by Exec.
  64.                 See also ADDMEM.) These options affect memory types offered
  65.                 by the GUI.
  66.  
  67.     <nothing> - When you specify no memory control options, MKick will assume
  68.                 that CHIP, FAST, EXP and NAC options are set.
  69.  
  70. ADDMEM <base> <size> [<priority>] - add a region of NON-AUTOCONFIG RAM to the
  71.                 system. The non-autoconfig (NAC) RAM can be found on many
  72.                 accelerated systems. The basic property of this type of memory
  73.                 is that it's present when the machine is rebooted, but no part
  74.                 of the operating system is able to find it and give it to all
  75.                 application programs. The manufacturers usually supply some
  76.                 utility which is able to do the memory adding for you, but these
  77.                 utilities have significant problems with the most of kickers.
  78.                 In this case, you can simply say MKick where is your memory
  79.                 located, how large is it (specified in bytes; both the address
  80.                 and the size are hexadecimal numbers; the shortened form used
  81.                 by ADR can be used here, too). The priority is a decimal number
  82.                 in range <-128;127>. All regions of available memory are sorted
  83.                 by their priority (expansion memory has 10, fast RAM 0, chip RAM
  84.                 -10, default for ADDMEM is 20). When a program tries to allocate
  85.                 some memory, the Exec will use available memory chunk with the
  86.                 highest priority it founds and because the NAC RAM is often the
  87.                 fastest one in the system, it's very good to use it first.
  88.  
  89. Other options:
  90.  
  91.          AUTO - exit if already kicked. The operation you have selected won't be
  92.                 done if there is already some Kickstart in RAM or if you sele-
  93.                 cted (by the ROM option or by the GUI) that you want to use ROM
  94.                 Kickstart. For example: if you have MKick in your startup-sequence
  95.                 and you want to start KS 3.0 when you boot first time, you can
  96.                 say 'MKick DEVS:Kickstarts/Kick39106.A1200 AUTO' in this case.
  97.                 It will prevent MKick from trying to re-kick whenever you boot
  98.                 and will allow you to stay in ROM KS without changing anything.
  99.                 you can also say 'MKick AUTO GUI' - it displays GUI only when
  100.                 you didn't select any Kickstart before.
  101.  
  102.        NOTAGS - remove all resident modules before kicking. MKick tries to use
  103.                 smart algorithm of removing of modules, which could cause system
  104.                 crash, but there could be an exception that isn't capable of
  105.                 being handled by this way. If MKick doesn't work on your system,
  106.                 try to use this option.
  107.  
  108.       NOPATCH - don't use the patches. The patch tables are usually built to
  109.                 fix known Kickstart bugs. Some of these bugs can cause wrong
  110.                 operation of kickers. Don't use this option when you don't know
  111.                 what are you really doing.
  112.  
  113.   KICKDIR <x> - search for Kickstarts in specified directory. The default is
  114.                 "DEVS:Kickstarts". It affects only the GUI.
  115.  
  116.         CACHE - turn on CPU caches as soon as it's possible. The machines
  117.                 equipped with 68020 or higher CPU have a CACHE MEMORY. When
  118.                 it's used, it speeds up a bit all operations, but not all
  119.                 programs are compatible with this CPU enhancement. The caches
  120.                 are normally switched on by CPU, SETCPU or other similar
  121.                 command, which can be started from the startup-sequence.
  122.                 If you want to enable the caches automatically, you should
  123.                 specify this option.
  124.  
  125.         EBREL - relocate ExecBase to expansion or non-autoconfig memory. It
  126.                 can slightly increase system performance. This feature is
  127.                 somewhat tricky and works only with some Kickstarts (Kickstarts
  128.                 older than 2.04 and most of A600 versions don't allow it).
  129.                 Because Kickstarts 1.X require ExecBase to be present when
  130.                 the system starts, systems with ExecBase in expansion memory
  131.                 cannot survive standard reboot (with ExecBase in non-autoconfig
  132.                 memory it's usually possible). MKick's own resets (when
  133.                 switching to another Kickstart) create fake ExecBase in chip
  134.                 RAM allowing it to survive. Also the ColdReboot system call is
  135.                 patched, so you can use it for rebooting without losing the
  136.                 Kickstart.
  137.  
  138.                    There exists a FastEBPatch utility (distributed in this
  139.                 archive), which patches some other system calls and creates
  140.                 a Ctrl-Alt-Alt-Del sequence for resetting the machine in
  141.                 a clean way.
  142.  
  143.        RELVEC - relocate CPU vectors (normally placed on addresses 8-$3FF) to
  144.                 fast RAM (applicable only with 68010 or newer CPU installed).
  145.                 Can slightly increase system performance and reduce amount of
  146.                 deadly system crashes (the probability that unwanted memory
  147.                 access caused by a crash hits the vectors is a bit lower).
  148.  
  149.                    In this mode, space for new vector table is allocated, the
  150.                 vectors are moved into it and the VBR register is set to the new
  151.                 address. The original vector area is cleared, only the longword
  152.                 at address $8 points to the new vectors (this rule has been
  153.                 introduced by SinSoft to be used in some products which require
  154.                 exact knowledge of vector base without switching to supervisor
  155.                 mode (e.g., if the ExecBase is inaccessible). The deadend alerts
  156.                 don't work in this mode unless the FastEBPatch is installed.
  157.  
  158. Debug options:
  159.  
  160.          WAIT - wait for RETURN key before resetting the machine. If you enter
  161.                 'q', MKick will stop the action and exit immediately without
  162.                 deallocating any memory, therefore you can look at MKick's
  163.                 resident module and similar things. If you see that something
  164.                 is wrong, you can press CTRL-C (MKick checks CTRL-C before it
  165.                 installs the resident tags and before each reboot). In this
  166.                 case, MKick deallocates all used memory and terminates. The
  167.                 checking of CTRL-C doesn't depend on WAITing.
  168.  
  169.         DEBUG - turn on debugging information. It consists of two sequences
  170.                 of colourful stripes displayed during reboot with RAM KS.
  171.                 The first set of stripes (all colours) is displayed before
  172.                 the RAM KS is started. The second (black & white) one is
  173.                 displayed when MKick fixes RAM, adds autoconfig devices
  174.                 and does many other things. During the second phase, if you
  175.                 hold the left mouse button and you have KS V36 or higher, the
  176.                 startup-sequence will be disabled (the mouse button is tested
  177.                 immediately after the black & white stripes appear). Please
  178.                 include effect of this option if you are preparing a bug
  179.                 report for me. Warning: pressing of LMB during the first phase
  180.                 has different effect - removing of all resident modules.
  181.  
  182.        NOTEST - don't test Kickstart image before using it. Don't use, because
  183.                 invalid Kickstart images don't work properly.
  184.  
  185.         FORCE - don't fail if Kickstart memory can't be allocated. Used rarely,
  186.                 but if you have some non-autoconfig memory at $600000 and you
  187.                 don't want to use ADDMEM and the memory is not added to the
  188.                 system, you should enter 'MKick <Kickstart name> ADR 60 FORCE'.
  189.  
  190.  
  191. Invocation from Workbench:
  192. --------------------------
  193.  
  194.    Simply double-click on MKick's icon and MKick will be started.  Using
  195. 'Info' or 'Information' (WB 2.0 or higher), you may specify all previously
  196. mentioned options using the tool types.  The boolean (ON/OFF) switches can be
  197. enabled using their name followed by '=' or '=ON'.  If the Kickstart name
  198. (FILE=) is not specified, the GUI is started automatically.
  199.  
  200.  
  201. Graphic User Interface:
  202. -----------------------
  203.  
  204.    When MKick is started in the GUI mode, a screen with a list of available
  205. Kickstarts will appear.  You may select the Kickstart you want to use or hit
  206. 'Cancel'.
  207.  
  208.    Then you may select the type of RAM you want to store the Kickstart to
  209. (ORIGINAL location, CHIP RAM, FAST RAM, EXP RAM, NAC RAM or ANY RAM if you
  210. want to choose the optimal location automatically).  It's also possible to
  211. disable the patches.  Then hit the 'OK' gadget to start the whole loading
  212. process.
  213.  
  214.  
  215. Types of operation:
  216. -------------------
  217.  
  218.  - Normal loading - used when you load the Kickstart to memory which is free
  219.  
  220.  - Loading to temporary buffer - used when you want to load the Kickstart to
  221. memory which is not free, but if there is some room to load the image to.
  222.  
  223.  - Hard loading - used if the FORCE option has been specified. In this case,
  224. the RAM block containing the Kickstart image will be allocated only if it's
  225. possible. Unsuccessful allocation will not be reported.
  226.  
  227.  - Disconnecting of C0-RAM - used if you have only 0.5M of CHIP RAM and 0.5M
  228. of FAST RAM.  MKick will perform a reset to disconnect the FAST RAM from the
  229. system memory list.  Then (if started again) it will load the Kickstart to the
  230. disconnected C0-RAM.
  231.  
  232.  - Loading from Kickstart disk - MKick allows to load the Kickstart from the
  233. floppy. It supports original SuperKickstart disks for the A3000 and the
  234. specially formatted disks created by MakeKickDisk.
  235.  
  236.  - Removing of RAM Kickstart - uses reset
  237.  
  238.  - Replacing RAM Kickstart by another RAM Kickstart - uses reset to remove the
  239. old one and then (if started again, normally from the Startup-sequence) tries
  240. to load the Kickstart using one of previously mentioned methods.
  241.  
  242.  
  243. Common problems:
  244. ----------------
  245.  
  246.  - MKick has no effect - normal reboot happens: Some resident modules collide
  247. with MKick. MKick normally tries to remove such modules, but ... you can fix
  248. it by using of the NOTAGS option or by removing the module manually.
  249.  
  250.  - Colourful stripes move on the screen and the machine seems to be crashed:
  251. It occurs when MKick isn't able to allocate the Kickstart block memory. Try
  252. the operation again after a cold reboot.
  253.  
  254.  - Black and white stripes and the machine seems to be crashed: Kickstart image
  255. checksum error during AUTOSUM test. Some program has destroyed the Kickstart.
  256. Use MKick again.
  257.  
  258.  - Black and white stripes, which disappear if you press the left mouse button:
  259. MKick is unable to allocate space for some resident module. This should not
  260. happen, but when it happens, it can be fixed if you select the NOTAGS switch.
  261.  
  262.  - Quickly blinking power led with red color of screen background: Kickstart
  263. image checksum doesn't match. Some program has destroyed the Kickstart. Use
  264. MKick again.
  265.  
  266.  - "Incorrect or suspicious Kickstart file" message: the Kickstart file you
  267. have supplied is corrupted or encrypted. The only thing you can do with
  268. corrupted Kickstart files is to throw them out. The encrypted files can be
  269. decrypted using the MakeKick utility (see the KICKTO option of MakeKick).
  270.  
  271.  - "Incorrect Kickstart address in header file","Invalid Kickstart original
  272. address","Corrupted Kickstart file","Kickstart file doesn't match the header",
  273. "Error reading Kickstart file" and other similar messages: The Kickstart file
  274. you have supplied doesn't match the Kickstart header. Your Kickstart can be
  275. corrupted or patched, but there's also a possibility that you have choosed
  276. wrong name of the Kickstart.
  277.  
  278.   - MKick can crash if you use some ROM remapping utility.
  279.  
  280.  
  281. Removing of resident modules:
  282. -----------------------------
  283.  
  284.    In several situations, you might want to remove all resident modules
  285. which survive reset (such as RAD, NewAlertHook etc. - especially useful
  286. if debugging such a thing). MKick can help you: If you hold the left mouse
  287. button during system reboot (after initialization of ROM Kickstart, but before
  288. start of the one in RAM), the resident modules except MKick's own module are
  289. removed.
  290.  
  291.    Warning: If you want to invoke bootmenu, you must press the buttons
  292. after the RAM Kickstart is started to avoid the actions described above.
  293.  
  294.